home *** CD-ROM | disk | FTP | other *** search
- /* NSCharacterSet.h
- Copyright 1993, 1994, NeXT, Inc.
- */
-
- #import <foundation/NSString.h>
- @class NSData;
-
- @interface NSCharacterSet : NSObject <NSCopying, NSMutableCopying>
-
- /* Getting predefined sets */
- + (NSCharacterSet *)controlCharacterSet;
- + (NSCharacterSet *)whitespaceCharacterSet;
- + (NSCharacterSet *)whitespaceAndNewlineCharacterSet;
- + (NSCharacterSet *)decimalDigitCharacterSet;
- + (NSCharacterSet *)letterCharacterSet; // upper+lower+modifier+other+NSM+CM
- + (NSCharacterSet *)lowercaseLetterCharacterSet;
- + (NSCharacterSet *)uppercaseLetterCharacterSet;
- + (NSCharacterSet *)nonBaseCharacterSet; // == NSM+CM
- + (NSCharacterSet *)alphanumericCharacterSet; // all kinds of letters & digits
- + (NSCharacterSet *)decomposableCharacterSet; // precomposed things, EXCEPT HANGUL!
- + (NSCharacterSet *)illegalCharacterSet; // non-Unicodes
-
- /* Getting autoreleased instances */
- + (NSCharacterSet *)characterSetWithRange:(NSRange)aRange;
- + (NSCharacterSet *)characterSetWithCharactersInString:(NSString *)aString;
- + (NSCharacterSet *)characterSetWithBitmapRepresentation:(NSData *)data;
-
- /* Other instance methods - only the first TWO must be implemented by all subclasses. There is an abstract implementation of the inverted set.
- */
- - (BOOL)characterIsMember:(unichar)aCharacter;
- - (NSData *)bitmapRepresentation;
- - (NSCharacterSet *)invertedSet;
-
- @end
-
- @interface NSMutableCharacterSet : NSCharacterSet <NSCopying, NSMutableCopying>
-
- /* Mutable subclasses must implement ALL of these methods.
- */
- - (void)addCharactersInRange:(NSRange)aRange;
- - (void)removeCharactersInRange:(NSRange)aRange;
- - (void)addCharactersInString:(NSString *)aString;
- - (void)removeCharactersInString:(NSString *)aString;
- - (void)formUnionWithCharacterSet:(NSCharacterSet *)otherSet;
- - (void)formIntersectionWithCharacterSet:(NSCharacterSet *)otherSet;
- - (void)invert;
-
- @end
-